package com.quanyan.place.service;

import com.quanyan.api.APIResponse;
import com.quanyan.place.entity.TbBannerLayout;
import com.quanyan.place.entity.apireq.ReqBannerAdmin;
import com.quanyan.place.entity.apireq.ReqBannerByCondition;
import com.quanyan.place.entity.apireq.ReqBannerPosition;
import com.quanyan.place.entity.apireq.ReqPlaceLeaderMsg;
import com.quanyan.place.entity.apiresp.RespBannerAdmin;
import com.quanyan.place.entity.apiresp.RespBannerPosition;
import com.quanyan.place.entity.apiresp.RespPlaceLeaderMsg;

import java.util.List;

/**
 * Created by yue.yuan on 2017/5/24.
 */
public interface AppBannerService {

    /**
     * 创建广告
     * @param reqBannerAdmin
     * @return
     */
    APIResponse createBannerInfo(ReqBannerAdmin reqBannerAdmin);

    /**
     * 更新广告
     * @param reqBannerAdmin
     * @return
     */
    APIResponse updateBannerInfo(ReqBannerAdmin reqBannerAdmin);

    /**
     * 删除广告
     * @param id
     * @return
     */
    APIResponse deleteBanner(Integer id);


    /**
     * 根据条件查询广告
     * @param condition
     * @return
     */
    APIResponse<List<RespBannerAdmin>> listBannerInfo(ReqBannerByCondition condition);

    /**
     * 查询广告位列表
     * @return
     */
    APIResponse<List<RespBannerPosition>> listBannerLayouts();

    /**
     * 查询广告位
     * @return
     */
    APIResponse queryLayout(Integer position);

    /**
     * 修改广告位样式
     * @param reqBannerPosition
     * @return
     */
    APIResponse updatePosition(ReqBannerPosition reqBannerPosition);

    /**
     * 添加馆长信息
     * @param reqPlaceLeaderMsg
     * @return
     */
    APIResponse insertPlaceLeaderMsg(ReqPlaceLeaderMsg reqPlaceLeaderMsg);

    /**
     * 编辑馆长信息
     * @param reqPlaceLeaderMsg
     * @return
     */
    APIResponse editPlaceLeaderMsg(ReqPlaceLeaderMsg reqPlaceLeaderMsg);

    /**
     * 获取馆长信息
     * @param placeId
     * @return
     */
    APIResponse<RespPlaceLeaderMsg> getPlaceLeaderMsg(Integer placeId);
}
